package datastructure.HashMap;

import java.util.HashMap;

/**
 * @Author Gan
 * @Date 2021/5/10 18:36
 * @Description: 给定两个字符串s和t, 它们只包含小写字母。
 * 字符串t是由s中的字母随机打乱之后，
 * 在随机的一个位置添加一个字母生成的。
 * 请找出那个添加的字母。
 * 比如：
 * s = "abcd"
 * t = "baedc"
 * 输出：e
 */
public class HashMapWork1 {
    public static void main(String[] args) {
        String s = "abcd";
        String t = "baedc";
        addAlphabet(s,t);

    }

    private static void addAlphabet(String oldStr, String newStr) {
        //非法验证，判断原字符串是否为空
        if (oldStr.length() == 0){
            System.out.println(newStr);
            return;
        }
        int count = 0;
        HashMap<Character, Integer> map = new HashMap<>();
        //把s中字母先装入集合中
        for (char ch : oldStr.toCharArray()) {
            map.put(ch, count++);
        }
        //判断新添加的字符串中有没有原来字符串没有的字母
        for (char c : newStr.toCharArray()) {
            if (!map.containsKey(c)) {
                System.out.println(c);
                break;
            }
        }

    }
}
